<Project Sdk="Microsoft.NET.Sdk">
  <!--
    ICastable.CoreLib provides a "shim" definition of ICastable in System.Private.CoreLib for the Castable test suite.
    The Castable test suite references this project at compile time but does not get deployed with the test.
    As a result, the Castable test suite has a direct reference to System.Private.CoreLib for the ICastable interface,
    which enables us to avoid using Reflection.Emit to provide the implementations.
  -->
  <PropertyGroup>
    <!-- Without process isolation, this support assembly gets copied to the merged wrapper folder -->
    <!-- where it subsequently crashes with other custom System.Private.CoreLib assemblies.  -->
    <RequiresProcessIsolation>true</RequiresProcessIsolation>
    <OutputType>Library</OutputType>
    <CLRTestKind>SharedLibrary</CLRTestKind>

    <AssemblyName>System.Private.CoreLib</AssemblyName>
    <Nullable>disable</Nullable>
    <NoWarn>$(NoWarn);nullable</NoWarn>
  </PropertyGroup>
  <ItemGroup>
    <Compile Include="$(RepoRoot)/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/ICastable.cs" />
  </ItemGroup>
</Project>
